<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8" />
    <style type="text/css">
      div {
        height: 300px;
        width: 300px;
        background: red;
      }
    </style>
  </head>

  <body>
    <div id="div"></div>
    <script>
        // 解决点击变色问题
        // 点击事件回调函数里又有函数且使用了this改变效果
        // 调用该函数想要实现点击时改变效果需要使用call或者bind改变this指向
        var div = document.getElementById("div");
        div.onclick = function() {
            function change() {
                this.style.background = "black";
            }
            // setTimeout(change, 2000);
            setTimeout(change.bind(this), 2000);
        };
    </script>
  </body>
</html>
